// uploadHelper.ts
// import COS from 'cos-js-sdk-v5';
import { ElMessage } from 'element-plus'
import * as httpService from '@/services/apply.service'
import { ApplyModule } from '@/services/modules/apply'
// import cloud from 'wx-server-sdk';
// 这个函数用于调用微信云托管开放接口获取临时密钥
const getTemporaryKeys = async (): Promise<ApplyModule.CosAuthVo> => {
  const response = await httpService.getCosAuth()
  return response.data
}

// 上传文件的辅助函数// 上传文件的辅助函数
export const uploadFileToCOS = async (file: File, fileKey: string) => {
  try {
    const response = await httpService.uploadFileToCos(file, fileKey)
    console.log('文件上传成功', response)
    return response.data
  } catch (error) {
    console.error('文件上传失败', error)
    ElMessage.error('上传失败，请稍后重试')
  }
}

const bucket = '7072-prod-6g2xjx03c54348b1-1338619723'
const region = 'ap-shanghai'
const folder = 'scb'
// 上传文件的辅助函数
export const uploadFileToCOS1 = async (file: File, fileKey: string) => {
//   try {
    // const cloud = require('wx-server-sdk')

    // cloud.init({
    // env: cloud.DYNAMIC_CURRENT_ENV
    // })
    // return ""
    // const cloud = require('wx-server-sdk') as typeof import('wx-server-sdk');
    // cloud.init({
    //     env: 'prod-6g2xjx03c54348b1',
    // })
//     const fileName = `${folder}/${fileKey}` // 拼接存储路径
//     const res = await cloud.uploadFile({
//       cloudPath: fileName,
//       fileContent: file,
//     })
//     console.error('上传成功:', res)
//     return res.fileID
//   } catch (error) {
//     ElMessage.error('上传失败，请稍后重试')
//     console.error('上传失败:', error)
//     throw error
//   }
  //     // 获取临时密钥
  //     const cosConfig = await getTemporaryKeys();

  //     // 初始化 COS 实例
  //     const cos = new COS({
  //         SecretId: cosConfig.tmpSecretId,
  //         SecretKey: cosConfig.tmpSecretKey,
  //         SecurityToken: cosConfig.sessionToken
  //     });

  //     const fileName = `${folder}/${fileKey}`; // 拼接存储路径
  //     // 配置上传参数
  //     const uploadParams = {
  //         Bucket: bucket,
  //         Region: region,
  //         Key: fileName,
  //         Body: file
  //     };
  //     const res = await cos.uploadFile(uploadParams);
  //     // cos.putObject({
  //     //     Bucket: 'examplebucket-1250000000', // 填入您自己的存储桶，必须字段
  //     //     Region: 'COS_REGION',  // 存储桶所在地域，例如 ap-beijing，必须字段
  //     //     Key: '1.jpg',  // 存储在桶里的对象键（例如1.jpg，a/b/test.txt），必须字段
  //     //     // 当 Body 为 stream 类型时，ContentLength 必传，否则 onProgress 不能返回正确的进度信息
  //     //     Body: fs.createReadStream(filePath), // 上传文件对象，必须字段
  //     //     ContentLength: fs.statSync(filePath).size,
  //     //     onProgress: function(progressData) {
  //     //         console.log(JSON.stringify(progressData));
  //     //     }
  //     // }, function(err, data) {
  //     //     if (err) {
  //     //       console.log('上传失败', err);
  //     //     } else {
  //     //       console.log('上传成功', data);
  //     //     }
  //     // });

  //     const fileUrl = `https://${bucket}.cos.${region}.myqcloud.com/${fileName}`;
  //     return fileUrl;

  // } catch (error) {
  //     ElMessage.error('获取临时密钥失败，请稍后重试');
  //     console.error('获取临时密钥失败:', error);
  //     throw error;
  // }
}